import { IMessageBase } from "../../Framework/MQ/IMessageBase";
import { MessageManager } from "../../Framework/MQ/MessageManager";
import { SerializeStream } from "../../Framework/Serialize/SerializeStream";
type int = number;
//class SFightAttribute
    
    export  class SFightAttribute extends IMessageBase
    {
        constructor(arg1: Boolean=false)
        {
            
            super();if (arg1) 
            {
                MessageManager.instance().regist(this);
            }
            return;
        }

        
        {
            SFightAttribute._regist = new SFightAttribute(true);
        }

        public /* override */ getType(): int
        {
            return this._type;
        }

        public /* override */ clone(): IMessageBase
        {
            return new SFightAttribute();
        }

        public /* override */ __write(arg1: SerializeStream): void
        {
            arg1.writeInt(this.speed);
            arg1.writeInt(this.physicalAttack);
            arg1.writeInt(this.magicAttack);
            arg1.writeInt(this.power);
            arg1.writeInt(this.agile);
            arg1.writeInt(this.habitus);
            arg1.writeInt(this.brains);
            arg1.writeInt(this.spiritual);
            arg1.writeInt(this.maxLife);
            arg1.writeInt(this.maxMana);
            arg1.writeInt(this.physicalDefense);
            arg1.writeInt(this.magicDefense);
            arg1.writeInt(this.relief);
            arg1.writeInt(this.hit);
            arg1.writeInt(this.jouk);
            arg1.writeInt(this.pass);
            arg1.writeInt(this.block);
            arg1.writeInt(this.physicalCrit);
            arg1.writeInt(this.magicCrit);
            arg1.writeInt(this.speededUp);
            arg1.writeInt(this.toughness);
            arg1.writeInt(this.attackSpeed);
            arg1.writeInt(this.attackDistance);
            arg1.writeInt(this.physicalAttackPercentage);
            arg1.writeInt(this.magicAttackPercentage);
            arg1.writeInt(this.maxLifePercentage);
            arg1.writeInt(this.maxManaPercentage);
            arg1.writeInt(this.physicalDefensePercentage);
            arg1.writeInt(this.magicDefensePercentage);
            arg1.writeInt(this.physicalCritPercentage);
            arg1.writeInt(this.magicCritPercentage);
            arg1.writeInt(this.speededUpPercentage);
            arg1.writeInt(this.hitPercentage);
            arg1.writeInt(this.joukPercentage);
            arg1.writeInt(this.passPercentage);
            arg1.writeInt(this.blockPercentage);
            arg1.writeInt(this.toughnessPercentage);
            arg1.writeInt(this.reliefPercentage);
            arg1.writeInt(this.spirit);
            arg1.writeInt(this.speedPercentage);
            arg1.writeInt(this.hatredPercentage);
            arg1.writeInt(this.wuxing);
            arg1.writeInt(this.goldProp);
            arg1.writeInt(this.woodProp);
            arg1.writeInt(this.waterProp);
            arg1.writeInt(this.fireProp);
            arg1.writeInt(this.earthProp);
            arg1.writeInt(this.goldRelief);
            arg1.writeInt(this.woodRelief);
            arg1.writeInt(this.waterRelief);
            arg1.writeInt(this.fireRelief);
            arg1.writeInt(this.earthRelief);
            arg1.writeInt(this.ignoreRelief);
            arg1.writeInt(this.wuxingPercentage);
            arg1.writeInt(this.goldPropPercentage);
            arg1.writeInt(this.woodPropPercentage);
            arg1.writeInt(this.waterPropPercentage);
            arg1.writeInt(this.firePropPercentage);
            arg1.writeInt(this.earthPropPercentage);
            arg1.writeInt(this.harmDeeper);
            arg1.writeInt(this.harmLower);
            arg1.writeString(this.reserveStr);
            return;
        }

        public /* override */ __read(arg1: SerializeStream): void
        {
            this.speed = arg1.readInt();
            this.physicalAttack = arg1.readInt();
            this.magicAttack = arg1.readInt();
            this.power = arg1.readInt();
            this.agile = arg1.readInt();
            this.habitus = arg1.readInt();
            this.brains = arg1.readInt();
            this.spiritual = arg1.readInt();
            this.maxLife = arg1.readInt();
            this.maxMana = arg1.readInt();
            this.physicalDefense = arg1.readInt();
            this.magicDefense = arg1.readInt();
            this.relief = arg1.readInt();
            this.hit = arg1.readInt();
            this.jouk = arg1.readInt();
            this.pass = arg1.readInt();
            this.block = arg1.readInt();
            this.physicalCrit = arg1.readInt();
            this.magicCrit = arg1.readInt();
            this.speededUp = arg1.readInt();
            this.toughness = arg1.readInt();
            this.attackSpeed = arg1.readInt();
            this.attackDistance = arg1.readInt();
            this.physicalAttackPercentage = arg1.readInt();
            this.magicAttackPercentage = arg1.readInt();
            this.maxLifePercentage = arg1.readInt();
            this.maxManaPercentage = arg1.readInt();
            this.physicalDefensePercentage = arg1.readInt();
            this.magicDefensePercentage = arg1.readInt();
            this.physicalCritPercentage = arg1.readInt();
            this.magicCritPercentage = arg1.readInt();
            this.speededUpPercentage = arg1.readInt();
            this.hitPercentage = arg1.readInt();
            this.joukPercentage = arg1.readInt();
            this.passPercentage = arg1.readInt();
            this.blockPercentage = arg1.readInt();
            this.toughnessPercentage = arg1.readInt();
            this.reliefPercentage = arg1.readInt();
            this.spirit = arg1.readInt();
            this.speedPercentage = arg1.readInt();
            this.hatredPercentage = arg1.readInt();
            this.wuxing = arg1.readInt();
            this.goldProp = arg1.readInt();
            this.woodProp = arg1.readInt();
            this.waterProp = arg1.readInt();
            this.fireProp = arg1.readInt();
            this.earthProp = arg1.readInt();
            this.goldRelief = arg1.readInt();
            this.woodRelief = arg1.readInt();
            this.waterRelief = arg1.readInt();
            this.fireRelief = arg1.readInt();
            this.earthRelief = arg1.readInt();
            this.ignoreRelief = arg1.readInt();
            this.wuxingPercentage = arg1.readInt();
            this.goldPropPercentage = arg1.readInt();
            this.woodPropPercentage = arg1.readInt();
            this.waterPropPercentage = arg1.readInt();
            this.firePropPercentage = arg1.readInt();
            this.earthPropPercentage = arg1.readInt();
            this.harmDeeper = arg1.readInt();
            this.harmLower = arg1.readInt();
            this.reserveStr = arg1.readString();
            return;
        }

        public /* const */_type: int=20201;

        public /* var */brains: int;

        public /* var */spiritual: int;

        public /* var */maxLife: int;

        public /* var */maxMana: int;

        public /* var */physicalDefense: int;

        public /* var */magicDefense: int;

        public /* var */relief: int;

        public /* var */hit: int;

        public /* var */jouk: int;

        public /* var */pass: int;

        public /* var */block: int;

        public /* var */physicalCrit: int;

        public /* var */magicCrit: int;

        public /* var */speededUp: int;

        public /* var */toughness: int;

        public /* var */attackSpeed: int;

        public /* var */attackDistance: int;

        public /* var */physicalAttackPercentage: int;

        public /* var */magicAttackPercentage: int;

        public /* var */maxLifePercentage: int;

        public /* var */maxManaPercentage: int;

        public /* var */physicalDefensePercentage: int;

        public /* var */magicDefensePercentage: int;

        public /* var */physicalCritPercentage: int;

        public /* var */magicCritPercentage: int;

        public /* var */speededUpPercentage: int;

        public /* var */hitPercentage: int;

        public /* var */joukPercentage: int;

        public /* var */passPercentage: int;

        public /* var */blockPercentage: int;

        public /* var */toughnessPercentage: int;

        public /* var */reliefPercentage: int;

        public /* var */spirit: int;

        public /* var */speedPercentage: int;

        public /* var */hatredPercentage: int;

        public /* var */wuxing: int;

        public /* var */goldProp: int;

        public /* var */woodProp: int;

        public /* var */waterProp: int;

        public /* var */fireProp: int;

        public /* var */earthProp: int;

        public /* var */goldRelief: int;

        public /* var */woodRelief: int;

        public /* var */waterRelief: int;

        public /* var */fireRelief: int;

        public /* var */earthRelief: int;

        public /* var */speed: int;

        public /* var */wuxingPercentage: int;

        public /* var */goldPropPercentage: int;

        public /* var */woodPropPercentage: int;

        public /* var */waterPropPercentage: int;

        public /* var */firePropPercentage: int;

        public /* var */earthPropPercentage: int;

        public /* var */harmDeeper: int;

        public /* var */ignoreRelief: int;

        public /* var */reserveStr: string;

        public /* var */physicalAttack: int;

        public /* var */magicAttack: int;

        public /* var */power: int;

        public /* var */agile: int;

        public /* var */habitus: int;

        public static /* var */_regist: SFightAttribute;

        public /* var */harmLower: int;
    }
